<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Producto_agencia_lst( $this );

	class Producto_agencia_lst extends Lst
	{
	function Producto_agencia_lst( &$oModule )
		{
			$this->Lst( $oModule );
		}
	function initialize()
		{
			$this->oFiltro = $this->oModule->loadClass( 'Producto_agencia_frm' );
			$this->aFields = array_merge ( (array)$this->aFields,  (array)$this->oFiltro->getFieldArray() );
			
			$this->setTitle ( "Agencias" );
			$this->setSummary( "Esta tabla contiene el listado de agencias de los productos turisticos" );
			$this->addColumnAction ( 'Agencia', VER_ESTABLECIMIENTO, 'ncEstablecimiento', 'cdEstablecimiento');
		}
	function setLevel()
		{
			switch ( $this->getOptionView() )
			{
				case 'L':
					$this->aShowColumns = array( 'Producto', 'Agencia' );
					break;
			}
			if ( array_key_exists( 'ncProducto' , $this->aFields )  ) unset($this->aShowColumns[array_search( 'Producto',$this->aShowColumns)]);
			if ( array_key_exists( 'ncEstablecimiento' , $this->aFields ) ) unset($this->aShowColumns[array_search( 'Agencia',$this->aShowColumns)]);
		}
	function query()
		{
			// Arma el Query
				$cSql = "SELECT *
								FROM gtProductoAgencia as PAg
								JOIN gtEstablecimiento as Est
									ON Est.ncEstablecimiento= PAg.ncEstablecimiento";
			// Arma el Filtro de la Consulta
				$this->oWhere->addArray ( $this->oFiltro->getFilterdArray('PAg') );
				return $cSql . $this->oWhere->make();
		}
	function makeListActions()
		{
			$cParametroRegistro =  $this->getFieldString();
			$this->addListAction ( AGREGAR_PRODUCTO_AGENCIA, $cParametroRegistro, 'I' );
		}
	function makeRowActions( $aRow )
		{
			$cParametroRegistro = "ncProducto=" . $aRow["ncProducto"] . '&amp;' .  "ncEstablecimiento=" . $aRow["ncEstablecimiento"]. '&amp;' .  "ncOrden=" . $aRow["ncOrden"];
			$this->addRowAction ( MODIFICAR_PRODUCTO_AGENCIA, $cParametroRegistro , '', VENTANA_SECUNDARIA );
			$this->addRowAction ( ELIMINAR_PRODUCTO_AGENCIA ,  $cParametroRegistro );
		}
	}
?>